home *** CD-ROM | disk | FTP | other *** search
- ;──────────────────────────────────────────────────────────────────────────────
- ; Definiciones de tokens
- ;──────────────────────────────────────────────────────────────────────────────
- ; Si se declaran dos o más símbolos con el mismo identificador, solo se
- ; reconocerá el primero (sean tokens u objetos de la tabla)
- ; Limitación, no mezclar símbolos con carácteres de identificador en un
- ; solo token (los carácteres de ident. son los que están en lower[]).
- ; Están libres para ser redefinidos los códigos de token &01..&77 (hex)
- ;──────────────────────────────────────────────────────────────────────────────
-
- &01program ;Program
- &02const ;Const
- &03global ;Global
- &04local ;Local
- &05begin ;Begin
- &06end ;End
- &07process ;Process
- &08private ;Private
- &09struct ;Struct
- &0Aimport ;Import
- &0Bsetup_program ;Setup_program
-
- &10until ;Until
- &11else ;Else
-
- &18return ;Return
-
- &19from ;From
- &1Ato ;To
- &1Bstep ;Step
-
- &20if ;If
-
- &21loop ;Loop
- &22while ;While
- &23repeat ;Repeat
- &24for ;For
-
- &25switch ;Switch
- &26case ;Case
- &27default ;Default
-
- &28frame ;Frame
-
- &29break ;Break
- &2Acontinue ;Continue
-
- &2Bclone ;Clone
-
- &2Cdebug ;Debug
-
- &30; &30: ;Separador de sentencias
- &31, ;Separador de expresiones
-
- &32[ ;Indirección, inicio
- &33] ;Indirección, final
-
- &38= &38:= ;Asignación
-
- &3Cdup ;Dup
-
- &40( ;Paréntesis, apertura
- &41) ;Paréntesis, cierre
-
- &44add ;Suma exclusivamente binaria, pasa a + en tab_exp
- &45sub ;Resta exclusivamente binaria, pasa a -
-
- &46>> ;Rotación a la derecha
- &47<< ;Rotación a la izquierda
-
- &48or &48|| &48| ;Or lógico
- &49xor &49^^ ;Xor lógico
- &4Aand &4A&& ;And lógico
-
- &4B^ ;Pointer (unario) o bien xor lógico (binario)
- &4C& ;Offset (unario) o bien and lógico (binario)
-
- &4Eneg ;Signo menos unario
- &4Fpointer ;Operador de indirección, unario
-
- &50offset ;Desplazamiento unaria
- &51! &51not ;Negación lógica unaria
- º
- &52+ ;Suma binaria, usado como unario es ignorado
- &53- ;Resta binaria, usado como unario equivale a neg
-
- &54* ;Multiplicación, usado como unario equivale a pointer
- &55/ &55div ;División entera, cociente
- &56% &56mod ;Módulo, resto de división entera
- &57mul ;Multiplicación exclusivamente binaria, pasa a *
-
- &58++ ;Incremento
- &59-- ;Decremento
-
- &5B== &5B_eq ;Igual, operador binario de comparación
- &5C<> &5C!= &5C_ne ;Diferente
-
- &5D> &5D_gt ;Mayor
- &5E< &5E_lt ;Menor
- &5F<= &5F=< &5F_le ;Menor o igual
- &60>= &60=> &60_ge ;Mayor o igual
-
- &66sizeof ;Función sizeof() interna, devuelve longitud
-
- &67type ;Operando que significa el código del proceso ejecutado
-
- &68id &68whoami ;Operando que significa el código del proceso ejecutado
-
- &69. &69-> ;Operador de acceso a variables ajenas (ej.: nave.x)
-
- &6A.. ;Especificador de rango (dentro de un case)
-
- &6B+= ;Asignaciones operativas (abreviaturas de C)
- &6C-=
- &6D*=
- &6E/=
- &6F%=
- &70&=
- &71|=
- &72^=
- &73>>=
- &74<<=
-
- ;─── Códigos de token especiales o reservados ─────────────────────────────────
-
- &00 ;&00 p_última (Fin de fichero)
- &78' &79" ;&78..&7B delimitadores de literales (interno an.lex.)
- ;&7C reservado (")
- &7D/* ;&7D Inicio de un comentario de varias líneas
- &7E*/ ;&7D Fin de un comentario de varias líneas
- &7F// ;&7F Inicio de un comentario de una línea (")
- ;&80..&FC (reservados) (")
- ;&FD identificador
- ;&FE constante entera
-
- ;──────────────────────────────────────────────────────────────────────────────
-